The Semantics of Progress and Concurrency in Distributed Transactional Memory Systems

نویسندگان

  • Junwhan Kim
  • Binoy Ravindran
چکیده

Transactional memory (TM) is an alternative synchronization model for shared in memory data objects that promise to alleviate difficulties with lock-based synchronization (e.g., lack of compositionality, deadlocks, lock convoying). A transaction is a sequence of operations, performed by a single thread, for reading and writing shared objects. Distributed TM is motivated by the similar difficulties of lock-based synchronization methods employed by existing distributed control flow programming models such as RPCs [6]. Past efforts in distributed TM ( [2], [6]) have focused on a transactional throughput regarding both how fast transactions run and that a node running a transaction will eventually be able to complete it. The improved transactional throughput has been evaluated on how to design cache-coherence protocols to maintain object consistency and to reduce the number of aborts through contention management and transactional scheduling. However, none of the past works define semantics for distributed TM. Some of the semantics is defined as a programming abstraction with high-level atomic guarantees. Other semantics are low-level models including aspects of implementations [1]. We aim to design a low-level TM model for progress and concurrency in distributed TM. In this paper, we propose a progress semantic with increasing concurrency in distributed TM. We define a strong progressive commitment ordering (CO) that addresses both the strong progressiveness and distributed CO properties. The paper makes the following contributions: 1) We present a formal semantics called a strong progressive CO for distributed TM systems. 2) We present a distributed lazy version management model to increase concurrency.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Hardware-Supported Transactional Memory

In this report, we describe a number of Hardware Transactional Memory (HTM) designs and their basic mechanisms used for better programmability and higher performance than conventional synchronization techniques based on locking. We compare the systems considering their programming model, hardware design challenges, transactional dataset constraints and forward progress guarantees. As high-speed...

متن کامل

LARKTM: Efficient, Strongly Atomic Software Transactional Memory

Software transactional memory provides an appealing alternative to locks by improving programmability, reliability, and scalability without relying on custom hardware. However, existing STMs are impractical because they add high overhead and provide weak semantics—or they provide strong atomicity semantics and add even higher overhead. Existing STMs are impractical largely due to the cost of co...

متن کامل

Optimistic Concurrency Semantics for Transactions in Coordination Languages

There has been significant recent interest in exploring the role of coordination languages as middleware for distributed systems. These languages provide operations that allow processes to dynamically and atomically access and manipulate collections of shared data. The need to impose discipline on the manner in which these operations occur becomes paramount if we wish to reason about correctnes...

متن کامل

On Open Nesting in Distributed Transactional Memory: Technical Report

Distributed Transactional Memory (DTM) is a recent but promising model for programming distributed systems. It aims to present programmers with a simple to use distributed concurrency control abstraction (transactions), while maintaining performance and scalability similar to distributed fine-grained locks. Any complications usually associated with such locks (e.g., distributed deadlocks) are a...

متن کامل

Supporting STM in Distributed Systems: Mechanisms and a Java Framework

We present HyFlow — a distributed software transactional memory (D-STM) framework for distributed concurrency control. Lockbased concurrency control suffers from drawbacks including deadlocks, livelocks, and scalability and composability challenges. These problems are exacerbated in distributed systems due to their distributed versions which are more complex to cope with (e.g., distributed dead...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2010